﻿/*
 * Created by SharpDevelop.
 * User: Zoila
 * Date: 18/10/2011
 * Time: 12:40 a.m.
 * 
 * To change this template use Tools | Options | Coding | Edit Standard Headers.
 */
using System;
using System.Drawing;
using System.Windows.Forms;
using Business_Entity;
using Business_Logic;
using PetSoft.GUI.RRHH;

namespace PetSoft.GUI.Ventas
{
	/// <summary>
	/// Description of GUIAperturarCaja.
	/// </summary>
	public partial class GUIAperturaCaja : Form
	{
		BECaja caja;
		BEEmpleado cajero;
		public GUIAperturaCaja(BECaja caja)
		{
			//
			// The InitializeComponent() call is required for Windows Forms designer support.
			//
			InitializeComponent();
			
			//
			// TODO: Add constructor code after the InitializeComponent() call.
			//
			this.caja=caja;
			this.cajaTB.Text=caja.ToString();
			this.cajaTB.Enabled=false;
						
			cajeroTB.MaxLength=40;
			this.cajeroTB.KeyPress+=new KeyPressEventHandler(Utils.SoloLetrasTB);
			
			solTB.MaxLength=20;
			dolarTB.MaxLength=20;
			this.solTB.KeyPress+=new KeyPressEventHandler(Utils.DecimalesPuntoTB);
			this.dolarTB.KeyPress+=new KeyPressEventHandler(Utils.DecimalesPuntoTB);  
			
			
		}
		
		void BuscarCajeroBTNClick(object sender, EventArgs e)
		{
			try{        	
	        	GUIBuscarEmpleado v = new GUIBuscarEmpleado();
	        	while (cajero==null){
		        	v.ShowDialog();
		        	if (v.Empleado!=null){
		        		if (BLCaja.esCajero(v.Empleado,BLInfo.tiendaActual.Id)){
		        		    	Utils.MessageAviso(v.Empleado.Nombre + " "+ v.Empleado.ApPaterno + ", ya tiene una caja aperturada."+ "\n Por favor, elija otro cajero.");
		        	//	    	return;
		        		}
		        		else{
		        		cajero = v.Empleado;
		        		this.cajeroTB.Text=cajero.Nombre+" "+cajero.ApPaterno;
						//BUSCAR CAJERO ACTUALIZA EL ATRIBUTO CAJERO
		        		}
		        	}
	        	}
			}
			catch{
				//Utils.MessageError("No se cargaron los datos del Cajero correctamente");
				this.cajeroTB.Text="#";
			}
			this.cajeroTB.Enabled=false;
			
		}
		
		void AceptarBTNClick(object sender, EventArgs e)
		{
			int resultado=-1;
			//APERTURA CAJA!!!
			if ( (dolarTB.Text.Equals("") || solTB.Text.Equals(""))&&cajeroTB.Text.Equals("")){
				//MessageBox.Show("Montos Ingresados Incorrectamente","Warning",MessageBoxButtons.OK,MessageBoxIcon.Warning);
				Utils.MessageAviso("Montos Ingresados Incorrectamente");
			}
			
			Business_Logic.BLCaja blCaja= new Business_Logic.BLCaja();
			float sol=0; float dolar=0;
			try{
				if (solTB.Text.Equals("")) sol=0;
				else sol=Single.Parse(solTB.Text);
					
				if (dolarTB.Text.Equals("")) dolar= 0;
				else dolar= Single.Parse(dolarTB.Text);
				
				//MessageBox.Show("Soles: "+ sol + " Dolar: "+ dolar);
				
				resultado = blCaja.AperturarCaja(caja,cajero,sol,dolar);
			}
			catch{
					MessageBox.Show("Montos Ingresados Incorrectamente","error",MessageBoxButtons.OK,MessageBoxIcon.Error);
			}
			 
			/*switch(resultado) {
				case -1 : MessageBox.Show("Ocurrio un error inesperado","Error",MessageBoxButtons.OK,MessageBoxIcon.Information);  break;
				case 0:  MessageBox.Show("Se realizo la apertura correctamente","Error",MessageBoxButtons.OK,MessageBoxIcon.Information);  break;
				default:  MessageBox.Show("Ocurrio un error inesperado en la apertura de caja","Error",MessageBoxButtons.OK,MessageBoxIcon.Information);  break;
			}*/
			this.Close();
		}
		
		void CancelarBTNClick(object sender, EventArgs e)
		{
			this.Close();
		}
	}
}
